home *** CD-ROM | disk | FTP | other *** search
/ STraTOS 1997 April & May / STraTOS 1 - 1997 April & May.iso / CD01 / ARCHIVER / UUENDE24 / UUENDE.TXT < prev   
Encoding:
Text File  |  1996-12-15  |  8.9 KB  |  241 lines

  1. Description
  2.  
  3.   This version of uuencode/uudecode is based on `Almost foolproof 
  4.   uuencode/uudecode', versions 3.1 and 3.4, resp., from 1987/88, which 
  5.   in turn were derived from the original Berkeley UN*X program. It had 
  6.   (and still has) the following features:
  7.   
  8.   - Trailing blanks which have been removed by mailservers and/or 
  9.     gateways are restored.
  10.  
  11.   - Two common internetwork transpositions are accepted, i.e. tilde 
  12.     instead of circonflex, and accent grave instead of blank. (The 
  13.     latter is not a gateway/network thing, but a feature of some UN*X 
  14.     uuencode, to avoid the blank compression by some protocols.)
  15.  
  16.   - Multiple-file decoding. If the files to be included do not exist, 
  17.     uudecode.ttp will attempt to go on with the same file, in case the 
  18.     multiple files have just been concatenated upon reception.
  19.  
  20.   - Line sequence checking, allowing the detection of missing, 
  21.     duplicate, or corrupted lines or files. This feature is enabled if 
  22.     the first line of the first uuencoded file is postfixed with a 'z' 
  23.     (this is done automatically by the uuencode.ttp companion 
  24.     program).
  25.  
  26.   - Complete check of the uudecoding process by use of the -d flag. 
  27.     This will give a detailed account of what the program does, and in 
  28.     addition enables a complete character-by-character check of the 
  29.     file to be decoded.
  30.  
  31.   - If a file starts with a character table, it will be used; this 
  32.     table is also produced by the companion uuencode.ttp.
  33.  
  34.   - Instant decoding of multiple uuencoded files in one file.
  35.  
  36.   - Complete compatibility with true UN*X uuencoded files (but not if 
  37.     the multiple part option of uuencode.ttp is used).
  38.   
  39.   
  40.   The present version has the following additions and modifications:
  41.   
  42.   - The file to be decoded is loaded entirely into memory. If you have 
  43.     insufficient RAM, the file must be split in multiple parts, using 
  44.     `include <filename>' as the last line of the individual parts 
  45.     (minus the last part) and `begin <filename>' as the begin line.
  46.   
  47.   - Full pathnames are truncated to filename only for use in begin 
  48.     line of encoded files (uuencode).
  49.     
  50.   - Command line parsing is done by the GNU getopt function and a 
  51.     few options have been added.
  52.     
  53.   - Commands can be read from a file. Useful for large (background) 
  54.     jobs.
  55.   
  56.   - Speed is improved. This version of uudecode is easily twice as 
  57.     fast as Esscode, and even eight times faster than Esscode when 
  58.     decoding multiple files.
  59.     
  60.   - The most important and useful addition, however, is that the 
  61.     uudecode program will skip garbage lines. This enables you to 
  62.     decode binary files sent by ftp-mailservers in multiple parts, 
  63.     without using an editor to remove the lines in between (no need, 
  64.     therefore, for MURKS!). Of course, this method can never be one 
  65.     hundred percent foolprove, since any interpretive device in the 
  66.     universe - and that includes you! - can ultimatley be fooled 
  67.     (variation 1 on Murphy's Law). Chances, however, that it will be 
  68.     fooled by accident, are very small indeed, and if you use sequence 
  69.     checking, plus, perhaps, the debug option, that small probability 
  70.     will even be further reduced. But use an editor if you don't trust 
  71.     this feature.
  72.  
  73. Usage
  74.  
  75.   uudecode -[vVhHnds<source dir>t<target dir>f<commands file>] {input files)
  76.   uuencode -[l<nlines>dhHvt<target dir>f<commands file>] {input files} [-]
  77.   
  78.   Options may be specified separately or concatenated, i.e. `-v -h -d' 
  79.   is the same as `-vhd'. Also, an option and its argument may be 
  80.   concatenated, i.e. `-t c:\output' is the same as `-tc:\output'.
  81.   
  82.   Options common to both programs:
  83.   
  84.     -v Print version info and exit.
  85.   
  86.     -H Print usage and exit.
  87.   
  88.     -h Hold screen (press any key to continue).
  89.     
  90.     -d Debug mode. In this mode, uudecode will perform a 
  91.        character-by-character check of the whole file and output 
  92.        extensive information about the decoding and error checking 
  93.        process; uuencode will be verbose.
  94.     
  95.     -t <directory name> Target directory. Output files will be put in 
  96.        this directory. Trailing (back)slashes are optional. If the 
  97.        directory doesn't exist, it will be created.
  98.     
  99.     -f <filename> Read commands from file; `filename' must be full path 
  100.        if the file is in a different directory. Each line in the file 
  101.        will be read as a command line and subsequently executed. In 
  102.        addition, jobs may be executed conditionally by concatenating 
  103.        them on the same line with the logical operators `&&' and '||',
  104.        where `&&' means: execute next job iff former job returned 0, and 
  105.        `||' means: execute next job iff former job returned non-0.
  106.        The logical operators are parsed as normal commands, i.e. 
  107.        surround them with spaces/tabs (or, in other words: this is not 
  108.        C).
  109.        Empty lines and lines beginning with `#' are ignored.
  110.        NOTE: The logical concatenation of jobs is dependant on the 
  111.        type of error in the former job. Some errors cause the program to 
  112.        abort.
  113.        
  114.   Options uudecode:
  115.     
  116.     -V Verbose mode. The program will output succinct information 
  117.        about the decoding process (see also option -d).
  118.     
  119.     -n No line sequence check.
  120.     
  121.     -s <directory name> Source directory for all input files (useful 
  122.        when decoding multiple files).
  123.     
  124.   Options uuencode:
  125.   
  126.     -l n n = maximum number of lines per output file.
  127.     
  128.     -T Generate table.
  129.     
  130.   The name(s) of the file(s) to be en/decoded may appear anywhere on the 
  131.   command line. There's no limit to the number of input files and the 
  132.   input filenames may, in addition, contain the usual wildcards `*' and 
  133.   `?'. Output filenames will be automatically created by both uuencode 
  134.   and uudecode. Output is piped to stdout by uuencode when input files 
  135.   on the command line are followed by `-' (disabled with option `-t').
  136.   
  137.   Examples
  138.   
  139.     The following will encode any file on drive `e' matching the 
  140.     wildcard pattern foo*.ttp into multiple output files *.uaa, *.uab, 
  141.     etc., containing a maximum of 500 lines each. The files will be 
  142.     placed in directory d:\output:
  143.     
  144.       uuencode -l500 -td:\output e:\foo*.ttp
  145.     
  146.     The following will decode multiple files foo.uaa, foo.uab, etc., 
  147.     plus multiple files oof.uaa, oof.uab, etc. in source directory 
  148.     e:\input and place the output files in target directory d:\output, 
  149.     with debug mode switched on and no line checking:
  150.     
  151.       uudecode -d -n -s e:\input -t d:\output foo.uaa oof.uaa
  152.     
  153.     The same can, of course, be achieved by
  154.     
  155.       uudecode -dnse:\input -td:\output *.uaa
  156.       
  157.     The following will execute the commands in file cmd.txt:
  158.     
  159.       uuen/decode -f cmd.txt
  160.     
  161.     Example of a commands file for uudecode:
  162.     
  163.       # decode all uue files in directory c:\uue and place the binaries
  164.       # in c:\bin:
  165.       -tc:\bin -sc:\uue *.uue
  166.       
  167.     Example of a commands file for uuencode:
  168.     
  169.       # encode file foo.ttp, with table, and place the result in
  170.       # c:\uue; do the same with file oof.ttp IFF the encoding of
  171.       # foo.ttp wasn't successful:
  172.       -Ttc:\uue foo.ttp || -Ttc:\uue oof.ttp
  173.       
  174. Postcardware
  175.  
  176.   This software is "postcardware", so please send me a postcard if you 
  177.   use it.
  178.   
  179. Bugs
  180.  
  181.   Every non-trivial program contains at least one bug, so, in that
  182.   sense, I hope these have bugs too. Please report to me if you find 
  183.   one.
  184.  
  185. Distribution
  186.  
  187.   uuencode.ttp and uudecode.ttp may be freely distributed, provided 
  188.   this file is included in the distribution.
  189.   
  190. Disclaimer
  191.  
  192.   Use these programs at your own risk. I will not accept any liability 
  193.   for damage caused by this software.
  194.  
  195. Tip
  196.  
  197.   For getting the most out of these programs in terms of ease of use, 
  198.   install them with Holger Weets' `Pacshell'.
  199.  
  200.  
  201. Jos den Bekker
  202.  
  203. Address:
  204. Rhijnvis Feithstraat 35
  205. 1054 TV  Amsterdam
  206. Netherlands
  207.  
  208. Email:
  209. <josdb@xs4all.nl>
  210.  
  211. WWW:
  212. http://www.xs4all.nl/~josdb
  213.  
  214. ------------------------------------------------
  215. History after first release:
  216.  
  217. 05.10.96: Bug in checking integrity of line fixed
  218.  
  219. 14.11.96: Option `-h' in uuencode didn't work; fixed for both 
  220.           programs: it now works always, regardless of where it 
  221.           appears on the command line.
  222.           Target directory created when it doesn't exist.
  223.  
  224. Version 2.2:
  225.  
  226.   06.12.96: Filename may appear anywhere on the command line. First 
  227.             release with version number :)
  228.             Bug in parsing filename fixed.
  229.  
  230.   07.12.96: Yet another bug in command line processing fixed.
  231.  
  232. Version 2.3 (not released):
  233.  
  234.   12.12.96: Multiple input files on command line, plus use of wildcards.
  235.  
  236. Version 2.4:
  237.  
  238.   12.12.96  Read commands from file.
  239.  
  240.   15.12.96: Table only generated on request.
  241.